package ast;

import java.util.ArrayList;

public class Nodo {

	/**
	 * ATTRIBUTES
	 */
	// lista de las expresiones hijas
	private ArrayList<Expresion> 	_Expresions;
	
	/**
	 * Constructor
	 */
	public Nodo(){
		_Expresions = new ArrayList<Expresion>();
	}
	
	/**
	 * agragar expresiones hijas
	 * @param pExpresion
	 */
	public void addExpresion( Expresion pExpresion) {
		this._Expresions.add(pExpresion);
	}

	/**
	 * Codigo asociado a esta expresion
	 */
	public String GenerarCodigo() {
		String code = new String();
		// recorrer las expresiones hijas y ir concatenando las sus codigos generados
		System.out.println("Cnt de expresiones: "+this.getExpresions().size());
		for(int cnt=0; cnt<this.getExpresions().size(); cnt++){
			code += getExpresions().get(cnt).GenerarCodigo();
		}
		return code;
	}
	
	/**
	 * Gets
	 */
	public ArrayList<Expresion> getExpresions() {
		return _Expresions;
	}
}
